home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / PROGRAMM / PASCAL / 1093.ZIP / MUSIC.ARC / BDAY.PAS next >
Pascal/Delphi Source File  |  1988-01-03  |  2KB  |  78 lines

  1. program birthday;            {Turbo Pascal 4.0}
  2.  
  3. {Plays "Happy Birthday" in 3-part harmony while displaying an
  4.  appropriate screen message.  Key of F is a good one for singing
  5.  along.  Developed by Ted Lassagne, Compuserve 70325,206.  Uses
  6.  the unit Music.tpu}
  7.  
  8. uses Music, CRT;
  9.  
  10. const
  11.    n = 4;
  12.  
  13. var
  14.    i : integer;
  15.  
  16. begin
  17.    clrscr;
  18.    gotoxy(30,10); write('IT''S YOUR BIRTHDAY!');
  19.    gotoxy(28,12); write('HAPPY BIRTHDAY TO YOU!!!');
  20.    gotoxy(1,24);
  21.    delay(1000);
  22.  
  23.    PLAY('l64mlt115');
  24.  
  25.    {Happy Birthday to you, ...}
  26.    FOR I := 1 TO N div 2 do play('o3co2af');
  27.    FOR I := 1 TO N div 2 do play('o3co2af');
  28.    FOR I := 1 TO N do play('o3do2af');
  29.    FOR I := 1 TO N do play('o3co2af');
  30.    FOR I := 1 TO N do play('o3fco2a');
  31.    FOR I := 1 TO N*2 do play('o3eo2b-g');
  32.  
  33.    {Happy Birthday to you ...}
  34.    FOR I := 1 TO N div 2 do play('o3co2b-e');
  35.    FOR I := 1 TO N div 2 do play('o3co2b-e');
  36.    FOR I := 1 TO N do play('o3do2b-e');
  37.    FOR I := 1 TO N do play('o3co2b-c');
  38.    FOR I := 1 TO N do play('o3gco2b-');
  39.    FOR I := 1 TO N*2 do play('o3fco2a');
  40.  
  41.    {Happy Birthday, dear ________ ...}
  42.    FOR I := 1 TO N div 2 do play('o3co2af');
  43.    FOR I := 1 TO N div 2 do play('o3co2af');
  44.    FOR I := 1 TO N do play('o4co3af');
  45.    FOR I := 1 TO N do play('o3afc');
  46.    FOR I := 1 TO N do play('o3fco2a');
  47.    FOR I := 1 TO N do play('o3eo2b-f');
  48.    FOR I := 1 TO N*2 do play('o3do2b-f');
  49.  
  50.    {Happy Birthday to you.}
  51.    FOR I := 1 TO N div 2 do play('o3b-fd-');
  52.    FOR I := 1 TO N div 2 do play('o3b-fd-');
  53.    FOR I := 1 TO N do play('o3afc');
  54.    FOR I := 1 TO N do play('o3fco2a');
  55.    FOR I := 1 TO N do play('o3gco2b-');
  56.    FOR I := 1 TO N*3 do play('o3fco2a');
  57.  
  58.    PLAY('p4mlt120');
  59.    gotoxy(23,15);
  60.    write('HOW   ');
  61.    FOR I := 1 TO N*2 do play('o3co2af');
  62.    write('OLD    ');
  63.    FOR I := 1 TO N*2 do play('o3do2af');
  64.    write('ARE    ');
  65.    FOR I := 1 TO N*2 do play('o3co2af');
  66.    write('YOOOOOOOOU  ');
  67.    FOR I := 1 TO N*6 do play('o3e-o2af');
  68.    write('???');
  69.  
  70.    {Optional salute at end}
  71.    delay(500);
  72.    sound(36);
  73.    delay(1500);
  74.    nosound;
  75.  
  76.    delay(4000);
  77.    clrscr;
  78. end.